﻿namespace Core.SystemLogs;

/// <summary>
/// 日志表
/// </summary>
public class SystemLog
{
    public int Id { get; set; }
    public int? MainLogId { get; set; }
    public string? Message { get; set; }
    public string? MessageTemplate { get; set; }
    public string Level { get; set; } = default!;
    public DateTimeOffset TimeStamp { get; set; } = DateTime.UtcNow;
    public string? Exception { get; set; }
    public string? UserName { get; set; }
    public string? ClientIP { get; set; }
    public string? ClientAgent { get; set; }
    public string? Properties { get; set; }
    public string? LogEvent { get; set; }
    public string? Module { get; set; }
    public string? Operation { get; set; }
    public string? Route { get; set; }
    public string? HttpMethod { get; set; }
    public string? OS { get; set; }
    public string? Browser { get; set; }
    public long? ElapsedMilliseconds { get; set; }
    public string? Address { get; set; }
    public long? StatusCode { get; set; }
    public string? Headers { get; set; }
    public bool Synced { get; set; } = false; // 是否已同步到租户
    public string? TraceId { get; set; }
    public string? ResponseBody { get; set; }
    public string? ResponseHeaders { get; set; }

}
